The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
Today, a wide variety of computing devices, including portable devices, support software applications that display digital maps (“mapping applications”). For example, mapping applications may run on laptop and tablet computers, mobile phones, car navigation systems, hand-held global positioning system (GPS) units, etc. Mapping applications can include special-purpose software applications as well as web browsers, for example.
A mapping application can display a digital map by rendering a set of vector-based map data that defines specific map elements (based on mathematical descriptions of geometric shapes). The map elements may denote individual streets, building footprints or 3D buildings, parks, bodies of water, natural formations, etc. In addition, map data may include text labels and graphic labels (e.g., symbols, icons, etc.) to identify individual streets, areas, landmarks and other map elements. These labels typically are placed over or near the map elements for which the labels identify or provide information. Typically, labels are defined in a raster (bitmap) format.
A mapping application can display a map at different zoom levels, each corresponding to a different level of magnification and different amount of detail. For example, at a high zoom level, a digital map may show streets, buildings and even sidewalks in an area of a desired location. At lower zoom levels, the map may show major roads, boundaries of neighborhoods, outlines of cities, and other geographic regions. While content defined in a vector graphics format can scale easily, text- and graphic-based labels generally do not scale well. To simplify scaling, a label of the same size can be used for two or more discreet zoom levels, as well as intermediate zoom levels between zoom level. However, as map elements become smaller during scaling, un-scaled labels can begin to overlap.